package com.yanlin.internalcommon.dto;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author ${author}
 * @since 2025-06-12
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class DriverUser implements Serializable {

    private static final long serialVersionUID = 1L;

    private Long id;

    /**
     * 修改日期
     */
    private LocalDateTime updateTime;

    /**
     * 创建日期
     */
    private LocalDateTime createTime;

    /**
     * 户口住址
     */
    private String address;

    /**
     * 司机姓名
     */
    private String driverName;

    /**
     * 手机号
     */
    private String driverPhone;

    /**
     * 性别：1男，0女
     */
    private Integer driverGender;

    /**
     * 出生年月
     */
    private LocalDate driverBirthday;

    /**
     * 民族
     */
    private String driverNation;

    /**
     * 联系地址
     */
    private String driverContactAddress;

    /**
     * 机动车驾驶证
     */
    private String licenseId;

    /**
     * 初次领取驾驶证日期
     */
    private LocalDate getDriverLicenseDate;

    /**
     * 驾驶证有效期起
     */
    private LocalDate driverLicenseOn;

    /**
     * 驾驶证有效期止
     */
    private LocalDate driverLicenseOff;

    /**
     * 是否巡游出租汽车驾驶员：1是，0否
     */
    private Integer taxiDriver;

    /**
     * 网络预约出租车汽车驾驶员资格证号
     */
    private String certificateNo;

    /**
     * 网络预约出租车汽车驾驶员证发证机构
     */
    private String networkCarIssueOrganization;

    /**
     * 资格证发证日期
     */
    private LocalDate networkCarIssueDate;

    /**
     * 初次领取资格证日期
     */
    private LocalDate getNetworkCarProofDate;

    /**
     * 资格证有效期起
     */
    private LocalDate networkCarProofOn;

    /**
     * 资格证有效期止
     */
    private LocalDate networkCarProofOff;

    /**
     * 报备日期
     */
    private LocalDate registerDate;

    /**
     * 服务类型：1网络预约出租汽车，2巡游出租汽车，3私人小客车合乘
     */
    private Integer commercialType;

    /**
     * 签署公司
     */
    private String contractCompany;

    /**
     * 签署有效期起
     */
    private LocalDate contractOn;

    /**
     * 签署有效期止
     */
    private LocalDate contractOff;

    /**
     * 司机状态
     */
    private Integer state;


}
